import {
    reqSavePermission, reqRolePerms, reqPermission, reqSaveRolePerms, reqPermsCategory,
} from "@/api"
// state：仓库存储数据的地方
const state = {
    // 权限列表
    permsList: [],
    // 权限分类
    permsCategory: []

}
// mutations：修改state的唯一手段，因此第一个参数必须是state，第二个参数为将要修改的数据
const mutations = {
    setPermsList(state, res) {
        state.permsList = res
    },
    setPermsCategory(state, res) {
        state.permsCategory = res
    }
}
// action：书写业务逻辑（method方法）
const actions = {
    // 获取权限分页
    async savePermission({ commit }, data) {
        let res = await reqSavePermission(data)
        if (res.success) commit("setRoleList", res.data.roleList)
        return res
    },
    // 获取角色权限
    async getRolePerms({ commit }, data) {
        return await reqRolePerms(data)
    },
    // 获取所有权限
    async getPermsList({ commit }) {
        let res = await reqPermission()
        if (res.success) commit("setPermsList", res.data)
        return res
    },
    // 保存角色权限
    async saveRolePerms({ commit }, data) {
        return await reqSaveRolePerms(data)
    },
    // 获取权限分类
    async getPermsCategory({ commit }) {
        let res = await reqPermsCategory()
        if (res.success) commit("setPermsCategory", res.data)
        return res
    }



}
// getters：计算属性
const getters = {

}

export default {
    state,
    mutations,
    actions,
    getters
}